{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "llx-2n4Awnlb1jwmF0Nn5iHtXNIntWYJFKIOP2rUJpJYjfi4ZECV\n",
      "Started parsing the file under job_id 4fd224a0-f850-4ffb-8f4f-46831510ec1a\n",
      "[Document(id_='86203ce1-cb60-4435-a909-6f8999d347ed', embedding=None, metadata={}, excluded_embed_metadata_keys=[], excluded_llm_metadata_keys=[], relationships={}, text=\"\\n# CHARTE PRODUITS COUP DE PATES\\n\\n**Codification**: CDP_QUA_CHART_01  \\n**Version**: 5  \\n**Date d'application**: 13/12/2023\\n\\n| Date       | Mises à jour                                                                 |\\n|------------|------------------------------------------------------------------------------|\\n| 19/12/2014 | Création                                                                     |\\n| 12/12/2019 | Insertion des additifs interdits et à éviter                                 |\\n| 13/05/2022 | Revue des exigences recettes et annexes                                      |\\n| 30/03/2023 | Revue des annexes I et II. Fréquence de mise à jour CDC                      |\\n| 13/12/2023 | Ajout d'une exigence de certification sur le cacao                           |\\n|            | Revue des exigences de certification de l’huile de palme                     |\\n\\n## Table des matières\\n\\n1. [Exigence recette](#exigence-recette) .................................................. 2  \\n2. [Produits soumis à certification ou allégations](#produits-soumis-à-certification-ou-allégations) ........ 3  \\n   2.1. [Produits « sans gluten »](#produits-sans-gluten) ................................................. 3  \\n   2.2. [Produits issus de l’agriculture biologique](#produits-issus-de-lagriculture-biologique) ............ 3  \\n3. [Exigences générales relatives au fournisseur](#exigences-générales-relatives-au-fournisseur) .......... 4  \\n4. [Exigences relatives aux sites de production](#exigences-relatives-aux-sites-de-production) ............ 4  \\n5. [Traçabilité](#traçabilité) ............................................................ 4  \\n6. [Suivi analytique](#suivi-analytique) .................................................. 5  \\n   6.1. [Suivi microbiologique](#suivi-microbiologique) .................................................. 5  \\n   6.2. [Suivi nutritionnel](#suivi-nutritionnel) ....................................................... 5  \\n   6.3. [Suivi organoleptique](#suivi-organoleptique) ................................................... 5  \\n7. [Non conformités](#non-conformités) .................................................... 5  \\n8. [Gestion de crise Coup de Pates](#gestion-de-crise-coup-de-pates) ........................ 6  \\n\\n**ANNEXE I**: Additifs rouges : additifs pour lesquels les rapports scientifiques rapportent une potentielle cancérogénicité ou une implication dans les pathologies lourdes ........ 7  \\n**ANNEXE II**: Additifs oranges : additifs pour lesquels les rapports scientifiques sont contradictoires ........ 10  \\n**ANNEXE III**: Additifs verts : additifs identifiés à ce jour comme non dangereux pour la santé ........ 11  \\n**ANNEXE IV**: Ingrédients controversés ........ 12  \\n\\n## Liste des abréviations\\n\\n- **AFDIAG** : Association Française Des Intolérants Au Gluten\\n- **AOECS** : Association of European Coeliac Societies\\n- **COFRAC** : Comité français d'accréditation\\n- **DGHM** : Deutschen Gesellschaft für Hygiene und Mikrobiologie\\n- **FCD** : Fédération du Commerce et de la Distribution\\n- **GFSI** : Global Food Safety Initiative\\n- **ILAC** : International Laboratory Accreditation Cooperation\\n- **NPD** : New Product Development\\n\\n---\\n# CHARTE PRODUITS COUP DE PATES\\n\\n**Codification**: CDP_QUA_CHART_01  \\n**Version**: 5  \\n**Date d'application**: 13/12/2023\\n\\n## 1. Exigence recette\\n\\nPour le développement de nos produits, nous souhaitons favoriser une offre saine avec des recettes simples (sans colorant, sans arôme, sans conservateur), avec des ingrédients de qualité, en favorisant des produits locaux et labellisés.\\n\\nLe fournisseur s’engage à respecter la réglementation européenne et nationale ainsi que les codes d’usages professionnels applicables aux produits surgelés vendus à Coup de Pates.\\n\\nPour les produits commercialisés sous une marque appartenant à Coup de Pates, le fournisseur s’engage également à respecter les exigences spécifiques de cette même marque.\\n\\nDans ce cas, nos exigences recettes sont spécifiques à trois niveaux gammes : Entrée de gamme, Cœur de gamme, Haut de gamme.\\n\\nPour les produits développés en réponse à des demandes spécifiques de nos clients, il vous sera également demandé de prendre leurs exigences en considération.\\n\\n| Caractéristiques | Entrée de gamme | Cœur de gamme | Haut de Gamme |\\n|------------------|-----------------|---------------|---------------|\\n| Ingrédients soumis à déclaration OGM | INTERDIT | INTERDIT | INTERDIT |\\n| Traitement par ionisation | INTERDIT | INTERDIT | INTERDIT |\\n| Colorants azoïques (E102, E104, E110, E122, E124, E129) | INTERDIT | INTERDIT | INTERDIT |\\n| Nanoparticules (E170, E171, E172, E174, E152, E341, E551 et E552) | INTERDIT | INTERDIT | INTERDIT |\\n| Glutamates et exhausteurs de goût | INTERDIT | INTERDIT | INTERDIT |\\n| Œufs de poules élevées en cage | INTERDIT | INTERDIT | INTERDIT |\\n| Matières grasses partiellement hydrogénées | INTERDIT | INTERDIT | INTERDIT |\\n| Acides gras trans non naturellement présents | INTERDIT | INTERDIT | INTERDIT |\\n| Édulcorants de synthèse | INTERDIT | INTERDIT | INTERDIT |\\n| Viande Séparée Mécaniquement - VSM | INTERDIT | INTERDIT | INTERDIT |\\n| Cacao non certifié durable | * INTERDIT pour tous les NPD et plan action pour remplacer le cacao non certifié dans l’existant. | * INTERDIT pour tous les NPD et plan action pour remplacer le cacao non certifié dans l’existant. | * INTERDIT pour tous les NPD et plan action pour remplacer le cacao non certifié dans l’existant. |\\n| Gélatine porcine | INTERDIT | INTERDIT | INTERDIT |\\n| Gélatine animale – (autre que porcine) | À ÉVITER | INTERDIT (tolérance dans les pâtisseries) | INTERDIT (tolérance dans les pâtisseries) |\\n| Huile de palme + palmiste non RSPO | * INTERDIT pour tous les NPD et plan action pour retirer dans l’existant - (tolérée dans supports d’additifs) - En aucun cas, l’huile de palme non RSPO ne pourra être substituée par de l’huile de coprah ou coco. | * INTERDIT pour tous les NPD et plan action pour retirer dans l’existant - (tolérée dans supports d’additifs) - En aucun cas, l’huile de palme non RSPO ne pourra être substituée par de l’huile de coprah ou coco. | * INTERDIT pour tous les NPD et plan action pour retirer dans l’existant - (tolérée dans supports d’additifs) - En aucun cas, l’huile de palme non RSPO ne pourra être substituée par de l’huile de coprah ou coco. |\\n| Huile de palme + palmiste RSPO (certification « Segregated » demandée, à minima « Mass Balance » soumis à dérogation) | À ÉVITER | À ÉVITER | INTERDIT |\\n\\nPage 2 sur 15\\n---\\n\\n# CHARTE PRODUITS COUP DE PATES\\n\\n|                          | A ÉVITER | INTERDIT (tolérance dans les pâtisseries *sauf arômes de fumée et vanilline) | INTERDIT (sauf arômes de fumée) |\\n|--------------------------|----------|-----------------------------------------------------------------------------|---------------------------------|\\n| Arômes artificiels       | A ÉVITER | INTERDIT (tolérance dans les pâtisseries *sauf arômes de fumée et vanilline) | INTERDIT (sauf arômes de fumée) |\\n| Colorants artificiels    | A ÉVITER | Interdit dans les produits salés                                             | INTERDIT                        |\\n| Ingrédients controversés (cf. Annexe IV) | A ÉVITER | A ÉVITER                                                                     | INTERDIT                        |\\n| Additifs rouges (cf. Annexe I) | A ÉVITER | INTERDIT (hors nitrites et polyphosphates)                                   | INTERDIT (hors nitrites dans les produits de salaison) |\\n| Additifs Oranges (cf. Annexe II) | A ÉVITER | A ÉVITER                                                                     | INTERDIT                        |\\n| Nitrites (E250 à E252)   | A ÉVITER | A ÉVITER                                                                     | INTERDIT (Hors produits de salaison) |\\n| Polyphosphates (E450 à 452 - E339 à 341) | A ÉVITER | A ÉVITER                                                                     | INTERDIT                        |\\n| Viande et volaille origine hors UE | A ÉVITER | A ÉVITER                                                                     | INTERDIT                        |\\n\\nL’ensemble de ces critères est applicable à tous les produits vendus par Coup de Pates. Des dérogations peuvent être accordées au cas par cas, sur justificatifs fournis par le fournisseur et après validation par la direction qualité Coup de Pates.\\n\\n## 2. Produits soumis à certification ou allégations\\n\\nLe fournisseur se doit de communiquer tout document permettant de valider la certification ou allégation associée à un produit.\\n\\nEn vue de vérifier la véracité des critères déclarés, le fournisseur s’engage à transmettre sur demande expresse de Coup de Pates, tout document permettant de justifier la certification et/ou de l’allégation associée(s) au(x) produit(s).\\n\\n### 2.1. Produits « sans gluten »\\n\\nLe fournisseur doit confirmer annuellement à Coup de Pates que l’allégation « sans gluten » de son (ses) produit(s) est applicable, conformément au règlement européen n°828/2014. Pour cela, un bulletin d’analyse de quantification du taux de gluten dans le produit fini doit être communiqué au service qualité.\\n\\nSi le fournisseur possède un contrat de licence auprès d’une association de personnes cœliaques (AFDIAG, AOECS…), il en transmettra le numéro de licence à Coup de Pates et les rapports et/ou certificats d’audits selon le référentiel d’audit de l’AOECS.\\n\\n### 2.2. Produits issus de l’agriculture biologique\\n\\nLe fournisseur s’engage à transmettre sur demande expresse de Coup de Pates, les analyses pesticides sur produits finis pour répondre aux exigences de la réglementation européenne.\\n\\n---\\n\\n# CHARTE PRODUITS COUP DE PATES\\n\\nCodification : CDP_QUA_CHART_01\\n\\nVersion : 5\\n\\nDate d’application : 13/12/2023\\n\\n(Règlement (CE) N°834/2007 relatif à la production biologique et à l’étiquetage des produits biologiques).\\n\\nEn cas de déclassement produit, de non-renouvellement ou de perte de la certification « produit issu de l’agriculture biologique », le fournisseur doit immédiatement en informer le service qualité Coup de Pates afin d’organiser le blocage et le retrait de ces produits.\\n\\n## 3. Exigences générales relatives au fournisseur\\n\\nLe fournisseur se doit de disposer de moyens de contrôle et d'enregistrement permettant le respect de la chaîne du froid dans son stockage et son transport de denrées congelées/surgelées.\\n\\nTout envoi d’échantillon devra être accompagné de la « Fiche d’évolution produit » ou d’une fiche technique fournisseur, reprenant à minima les données techniques demandées dans le document précédent (composition, dimensions, DDM ...). Toute autre information jugée nécessaire par le service qualité Coup de Pates devra être communiquée sur demande. Le cahier des charges Coup de Pates devra être rempli dès que le référencement du produit aura été confirmé.\\n\\nIl revient au fournisseur d’appliquer la plus grande diligence dans le transfert exhaustif de ces données. Le dossier établi à l’issue du processus de référencement sera validé à la fois par le fournisseur et un représentant du service qualité Coup de Pates. Toute modification du dossier technique devra être validée en amont par le service qualité Coup de Pates. Si cela est jugé nécessaire, des échantillons (produit actuel / produit modifié) devront être envoyés au service qualité Coup de Pates. Le cahier des charges devra être revu dans son intégralité tous les 5 ans. Même s’il n’y a pas de modification, le cahier des charges sera de nouveau signé avec la nouvelle date.\\n\\n## 4. Exigences relatives aux sites de production\\n\\nLe fournisseur se doit de communiquer les certificats relatifs à son activité, en cours de validité, par exemple : IFS, BRC, FSSC 22000. Le service qualité Coup de Pates devra être informé de tout renouvellement ou perte de certification.\\n\\nLe fournisseur se doit de communiquer, sur demande de Coup de Pates, l’ensemble des documents permettant de justifier sa maîtrise des risques liés à son activité (étude HACCP par exemple).\\n\\nLa mise en place des mesures contre les actes malveillants en matière de protection de la chaine alimentaire/des produits sont de la responsabilité du fournisseur.\\n\\n---\\n\\n# CHARTE PRODUITS COUP DE PATES\\n\\n**Codification :**  \\nCDP_QUA_CHART_01\\n\\n**Version :** 5\\n\\n**Date d’application :** 13/12/2023\\n\\nLe fournisseur doit posséder un **numéro d’enregistrement** auprès des services officiels, permettant l’export de ses produits par Coup de Pates.\\n\\n## 5. Traçabilité\\n\\nLe fournisseur se doit d’assurer la traçabilité de ses produits, de la réception des matières premières jusqu’à l’expédition des produits finis. La traçabilité d’une référence doit pouvoir être assurée via la date de durabilité minimale (au format jour/mois/année).\\n\\nSur demande de Coup de Pates, le fournisseur s’engage à transmettre les fiches ingrédients, certificats et éléments de traçabilité liés à la nature des matières premières, des emballages et du produit fini ainsi que les bilans de matière dans les délais stipulés.\\n\\n## 6. Suivi analytique\\n\\n### 6.1. Suivi microbiologique\\n\\nLes analyses microbiologiques réalisées sur les produits finis doivent être en adéquation avec la réglementation européenne n°2073/2005 et les recommandations de la FCD en France, du DGHM en Allemagne et en Suisse, ou équivalent local au sein de l’Europe.\\n\\nUne analyse microbiologique devra être réalisée lors de chaque première fabrication. Cette analyse devra être réalisée par un laboratoire accrédité COFRAC ou équivalent du COFRAC reconnu par l’ILAC dans les pays concernés ou certifié ISO 17025. Les résultats doivent être transmis au service qualité Coup de Pates.\\n\\nL’ensemble des produits Coup de Pates doivent être inclus dans le plan de contrôle microbiologique du fournisseur, selon les critères FCD. Sur demande de Coup de Pates, un nouveau bulletin d’analyse devra être communiqué.\\n\\n### 6.2. Suivi nutritionnel\\n\\nLe fournisseur doit communiquer à Coup de Pates une analyse nutritionnelle réalisée par un laboratoire accrédité COFRAC ou équivalent du COFRAC reconnu par l’ILAC dans les pays concernés. Cette analyse doit être réalisée pour chaque nouveau produit référencé, afin de répondre aux exigences d’étiquetage européennes (avec quantification des acides gras trans et des fibres), et à chaque modification de matières premières et/ou de recette. La communication d’analyses nutritionnelles calculées à l’aide d’un logiciel consolidé est également acceptée.\\n\\nSur demande de Coup de Pates, un nouveau bulletin d’analyse devra être communiqué.\\n\\n### 6.3. Suivi organoleptique\\n\\nL’ensemble des produits Coup de Pates doivent être inclus dans le plan de contrôle organoleptique du fournisseur. Sur demande de Coup de Pates, les résultats de ces analyses devront être communiqués.\\n\\n---\\n\\n# CHARTE PRODUITS COUP DE PATES\\n\\n| Codification : | CDP_QUA_CHART_01 |\\n|----------------|------------------|\\n| Version :      | 5                |\\n| Date d’application : | 13/12/2023  |\\n\\n## 7. Non conformités\\n\\nEn cas de non-conformité produit, sanitaire ou réglementaire, le fournisseur s’engage à alerter immédiatement Coup de Pates et à communiquer les éléments de traçabilité nécessaires.\\n\\nEn cas de non-conformité détectée par le service qualité Coup de Pates ou un de ses clients, une notification est envoyée au fournisseur. Celui-ci s’engage à communiquer son analyse et son plan d’action dans les délais demandés.\\n\\n## 8. Gestion de crise Coup de Pates\\n\\nEn cas de crise, le fournisseur s’engage à suivre la procédure de gestion de crise/alerte qui lui a été communiquée par Coup de Pates. Un contact spécifique avec numéro d’astreinte doit être communiqué.\\n\\n---\\n\\n# CHARTE PRODUITS COUP DE PATES\\n\\n**Codification**: CDP_QUA_CHART_01  \\n**Version**: 5  \\n**Date d'application**: 13/12/2023  \\n\\n## ANNEXE 1 : Additifs rouges : additifs pour lesquels les rapports scientifiques rapportent une potentielle cancérogénicité ou une implication dans les pathologies lourdes\\n\\n| Additif | Code | Additif | Code |\\n|---------|------|---------|------|\\n| Tartrazine | E 102 | Acide propionique | E 280 |\\n| Jaune de quinoléine | E 104 | Propionate de sodium | E 281 |\\n| Sunset Yellow FCF/Jaune orange S | E 110 | Propionate de potassium | E 283 |\\n| Azorubine, carmoisine | E 122 | Acide borique | E 284 |\\n| Amarante | E 123 | Tétraborate de sodium (borax) | E 285 |\\n| Ponceau 4R, rouge cochenille A | E 124 | Acide fumarique | E 297 |\\n| Erythrosine | E 127 | Gamma-tocophérol | E 308 |\\n| Rouge allura AC | E 129 | Delta-tocophérol | E 309 |\\n| Indigotine, carmin d’indigo | E 132 | Gallate de propyle | E 310 |\\n| Bleu brillant FCF | E 133 | Acide érythorbique | E 315 |\\n| Vert S | E 142 | Butylhydro-quinone tertiaire (BHQT) | E 319 |\\n| Caramel ammoniacal | E 150c | Butylhydroxy-anisol (BHA) | E 320 |\\n| Caramel au sulfite d’ammonium | E 150d | Butylhydroxy-toluène (BHT) | E 321 |\\n| Noir brillant PN | E 151 | Tartrates de sodium | E 335 |\\n| Brun HT | E 155 | Tartrate double de sodium et de potassium | E 337 |\\n| Carbonate de calcium | E 170 | Acide phosphorique | E 338 |\\n| Dioxyde de titane | E 171 | Phosphates de sodium | E 339 |\\n| Oxyde et hydroxyde de fer | E 172 | Phosphates de potassium | E 340 |\\n| Aluminium | E 173 | Phosphates de calcium | E 341 |\\n| Argent | E 174 | Phosphates de magnésium | E 343 |\\n| Lithol-rubine BK | E 180 | Malates de sodium | E 350 |\\n\\n---\\n\\n# CHARTE PRODUITS COUP DE PATES\\n\\n| **Benozoate de potassium** | **E 212** | **Malates de calcium** | **E 352** |\\n|----------------------------|-----------|------------------------|-----------|\\n| Benzoate de calcium        | E 213     | Acide adipique         | E 355     |\\n| p- hydroxybenzoate d’éthyle| E 214     | Adipate de sodium      | E 356     |\\n| Dérivé sodique de l’ester éthylique de l’acide p-hydroxybenzoïque | E 215 | Adipate de potassium | E 357 |\\n| p-hydroxybenzoate de méthyle | E 218   | Acide succinique       | E 363     |\\n| Dérivé sodique de l’ester méthylique de l’acide p-hydroxybenzoïque | E 219 | Citrate de triammonium | E 380 |\\n| Nisine                     | E 234     | Alginate de potassium  | E 402     |\\n| Hexaméthylènetétramine     | E 239     | Alginate d’ammonium    | E 403     |\\n| Dicarbonate de diméthyle   | E 242     | Mannitol               | E 421     |\\n| Éthyl Lauroyl Arginate     | E 243     | Gomme arabique modifiée à l’acide octénylsuccinique (OSA) | E 423 |\\n| Nitrite de potassium       | E 249     | Konjac                 | E 425     |\\n| Nitrite de sodium          | E 250     | Hémicellulose de soja  | E 426     |\\n| Nitrate de sodium          | E 251     | Stéarate de polyoxyéthylène (40) | E 431 |\\n| Nitrate de potassium       | E 252     | Mono laurate de polyoxyéthylène de sorbitane (polysorbate 20) | E 432 |\\n| Monooléate de polyoxyéthylène de sorbitane (polysorbate 80) | E 433 | Dioxyde de silicium | E 551 |\\n| Monopalmitate de polyoxyéthylène de sorbitane (polysorbate 40) | E 434 | Silicate de calcium | E 552 |\\n| Monostéarate de polyoxyéthylène de sorbitane (polysorbate 60) | E 435 | Silicate de magnésium | E 553a |\\n| Tristéarate de polyoxyéthylène de sorbitane (polysorbate 65) | E 436 | Talc | E 553b |\\n| Phosphatides d’ammonium    | E 442     | Silicate alumino-sodique | E 554 |\\n\\n**Codification**: CDP_QUA_CHART_01  \\n**Version**: 5  \\n**Date d’application**: 13/12/2023\\n\\n---\\n\\n# CHARTE PRODUITS COUP DE PATES\\n\\n| **Acétate isobutyrate de saccharose** | **E 444** |\\n|---------------------------------------|-----------|\\n| Esters glycériques de résine de bois  | E 445     |\\n| Diphosphates                          | E 450     |\\n| Triphosphates                         | E 451     |\\n| Polyphosphates                        | E 452     |\\n| Polyaspartate de potassium            | E 456     |\\n| Bêta-cyclodextrine                    | E 459     |\\n| Éthylcellulose                        | E 462     |\\n| Hydroxypropylcellulose faiblement substituée (L-HPC) | E 463a |\\n| Méthyléthylcellulose                  | E 465     |\\n| Carboxyméthylcellulose de sodium réticulée, gomme de cellulose réticulée | E 468 |\\n| Carboxyméthylcellulose hydrolysée de manière enzymatique, gomme de cellulose hydrolysée de manière enzymatique | E 469 |\\n| Sucroglycérides                       | E 474     |\\n| Huile de soja oxydée par chauffage ayant réagi avec des mono- et diglycérides d’acides gras | E 479b |\\n| Monostéarate de sorbitane             | E 491     |\\n| Tristéarate de sorbitane              | E 492     |\\n| Monolaurate de sorbitane              | E 493     |\\n| Monooléate de sorbitane               | E 494     |\\n| Monopalmitate de sorbitane            | E 495     |\\n| Chlorure d’étain                      | E 512     |\\n| Silicate alumino-potassique           | E 555     |\\n| 4-Hexylrésorcinol                     | E 586     |\\n| Acide glutamique                      | E 620     |\\n| Glutamate monosodique                 | E 621     |\\n| Glutamate monopotassique              | E 622     |\\n| Diglutamate de calcium                | E 623     |\\n| Glutamate d’ammonium                  | E 624     |\\n| Diglutamate de magnésium              | E 625     |\\n| Acide guanylique                      | E 626     |\\n| Guanylate disodique                   | E 627     |\\n| Guanylate dipotassique                | E 628     |\\n| Guanylate de calcium                  | E 629     |\\n| Acide inosinique                      | E 630     |\\n| Inosinate disodique                   | E 631     |\\n| Inosinate dipotassique                | E 632     |\\n| Inosinate de calcium                  | E 633     |\\n| 5'-ribonucléotide calcique            | E 634     |\\n| 5'-ribonucléotide disodique           | E 635     |\\n| Glycine et son sel de sodium          | E 640     |\\n| Acétate de zinc                       | E 650     |\\n\\n**Codification**: CDP_QUA_CHART_01  \\n**Version**: 5  \\n**Date d’application**: 13/12/2023\\n\\n---\\n\\n# CHARTE PRODUITS COUP DE PATES\\n\\n| Sulfate d’aluminium                      | E 520  | Cire microcristalline                                | E 905  |\\n|------------------------------------------|--------|-----------------------------------------------------|--------|\\n| Sulfate d’aluminium sodique              | E 521  | Poly-1-décène hydrogéné                              | E 907  |\\n| Sulfate d’aluminium potassique           | E 522  | Cire de polyéthylène oxydée                          | E 914  |\\n| Sulfate d’aluminium ammonique            | E 523  | Butane                                              | E 943a |\\n| Hydroxyde d’ammonium                     | E 527  | Isobutane                                           | E 943b |\\n| Oxyde de calcium                         | E 529  | Propane                                             | E 944  |\\n| Oxyde de magnésium                       | E 530  | Acésulfame-K                                        | E 950  |\\n| Ferrocyanure de calcium                  | E 538  | Aspartame                                           | E 951  |\\n| Phosphate d’aluminium sodique acide      | E 541  | Cyclamates                                          | E 952  |\\n| Isomalt                                  | E 953  | Polyvinylpolypyrrolidone                            | E 1202 |\\n| Saccharines                              | E 954  | Alcool polyvinylique (APV)                          | E 1203 |\\n| Sucralose                                | E 955  | Copolymère méthacrylate basique                     | E 1205 |\\n| Thaumatine                               | E 957  | Copolymère de méthacrylate neutre                   | E 1206 |\\n| Néotame                                  | E 961  | Copolymère de méthacrylate anionique                | E 1207 |\\n| Sel d’aspartame-acésulfame               | E 962  | Copolymère d’acétate de vinyle et de polyvinylpyrrolidone | E 1208 |\\n| Sirop de polyglycitol                    | E 964  | Copolymère greffé d’alcool polyvinylique et de polyéthylèneglycol | E 1209 |\\n| Maltitols                                | E 965  | Octényl succinate d’amidon d’aluminium              | E 1452 |\\n| Xylitol                                  | E 967  | Diacétate de glycéryle (diacéitine)                 | E 1517 |\\n| Érythritol                               | E 968  | Alcool benzylique                                   | E 1519 |\\n| Polyvinylpyrrolidone                     | E 1201 | Polyéthylène glycol                                 | E 1521 |\\n\\n---\\n\\n# CHARTE PRODUITS COUP DE PATES\\n\\n**Codification**: CDP_QUA_CHART_01  \\n**Version**: 5  \\n**Date d'application**: 13/12/2023  \\n\\n## ANNEXE II : Additifs oranges : additifs pour lesquels les rapports scientifiques sont contradictoires\\n\\n| Additif | Code | Additif | Code |\\n|---------|------|---------|------|\\n| Acide carminique, carmins | E 120 | Esters lactiques des mono- et diglycérides d’acides gras | E 472b |\\n| Bleu patenté V | E 131 | Esters citriques des mono- et diglycérides d’acides gras | E 472c |\\n| Caramel de sulfite caustique | E 150b | Esters tartriques des mono- et diglycérides d’acides gras | E 472d |\\n| Or | E 175 | Esters monoacétyltartriques et diacétyltartriques des mono- et diglycérides d’acides gras | E 472e |\\n| Acide benzoïque | E 210 | Esters mixtes acétiques et tartriques des mono- et diglycérides d’acides gras | E 472f |\\n| Benzoate de sodium | E 211 | Sucroesters d’acides gras | E 473 |\\n| Anhydride sulfureux | E 220 | Esters polyglycériques d’acides gras | E 475 |\\n| Sulfite de sodium | E 221 | Esters de propane-1,2-diol d’acides gras | E 477 |\\n| Sulfite acide de sodium | E 222 | Stéaroyl-2-lactylate de sodium | E 481 |\\n| Disulfite de sodium | E 223 | Stéaroyl-2-lactylate de calcium | E 482 |\\n| Disulfite de potassium | E 224 | Tartrate de stéaryle | E 483 |\\n| Sulfite de calcium | E 226 | Diméthylpolysiloxane | E 900 |\\n| Sulfite acide de calcium | E 227 | Advantame | E 969 |\\n| Sulfite acide de potassium | E 228 | Extraits de quillaia | E 999 |\\n| Natamycine | E 235 | Lysozyme | E 1105 |\\n| Éthylène-diamine-tétra-acétate de calcium disodium (calcium disodium EDTA) | E 385 | Amidon oxydé | E 1404 |\\n| Alginate de propane-1,2-diol | E 405 | Phosphate de monoamidon | E 1410 |\\n\\n---\\n\\n# CHARTE PRODUITS COUP DE PATES\\n\\n| Algues Euchema transformées | E 407a | Phosphate de diamidon | E 1412 |\\n|-----------------------------|--------|-----------------------|--------|\\n| Carraghénanes               | E 407  | Phosphate de diamidon phosphaté | E 1413 |\\n| Cellulose                   | E 460  | Phosphate de diamidon acétylé | E 1414 |\\n| Hydroxypropylcellulose      | E 463  | Amidon acétylé | E 1420 |\\n| Hydroxypropylméthylcellulose| E 464  | Adipate de diamidon acétylé | E 1422 |\\n| Carboxyméthyl-cellulose sodique, gomme cellulosique | E 466 | Amidon hydroxypropylé | E 1440 |\\n| Sels de sodium, de potassium, calcium d’acides gras, magnésium d’acides gras | E 470 | Phosphate de diamidon hydroxypropylé | E 1442 |\\n| Mono- et diglycérides d’acides gras | E 471 | Octényle succinate d’amidon sodique | E 1450 |\\n| Esters acétiques des mono- et diglycérides d’acides gras | E 472a | Amidon oxydé acétylé | E 1451 |\\n\\n**Codification**: CDP_QUA_CHART_01  \\n**Version**: 5  \\n**Date d'application**: 13/12/2023\\n\\n---\\n\\n# CHARTE PRODUITS COUP DE PATES\\n\\n**Codification**: CDP_QUA_CHART_01  \\n**Version**: 5  \\n**Date d'application**: 13/12/2023  \\n\\n## ANNEXE III : Additifs verts : additifs identifiés à ce jour comme non dangereux pour la santé.\\n\\n| Additif                                      | Code  | Additif                                      | Code  |\\n|----------------------------------------------|-------|----------------------------------------------|-------|\\n| Curcumine                                   | E 100 | Tartrates de potassium                       | E 336 |\\n| Riboflavines                                | E 101 | Malate de potassium                          | E 351 |\\n| Chlorophylles et chlorophyllines            | E 140 | Acide métatartarique                         | E 353 |\\n| Complexes cuivre-chlorophylles et cuivre-chlorophyllines | E 141 | Tartrate de calcium                          | E 354 |\\n| Caramel ordinaire                           | E 150a| Extraits de romarin                          | E 392 |\\n| Charbon végétal médicinal                   | E 153 | Acide alginique                              | E 400 |\\n| Caroténoïdes                                | E 160a| Alginate de sodium                           | E 401 |\\n| Bixine de rocou / Norbixine de rocou        | E 160b| Alginate de calcium                          | E 404 |\\n| Extrait de paprika, capsanthine, capsorubine| E 160c| Agar-agar                                    | E 406 |\\n| Lycopène                                    | E 160d| Farine de graines de caroube                 | E 410 |\\n| β- apocaroténal-8' (C 30)                   | E 160e| Gomme guar                                   | E 412 |\\n| Lutéine                                     | E 161b| Gomme adragante                              | E 413 |\\n| Rouge de betterave, bétanine                | E 162 | Gomme arabique ou gomme d'acacia             | E 414 |\\n| Anthocyanes                                 | E 163 | Gomme xanthane                               | E 415 |\\n| Acide sorbique                              | E 200 | Gomme Karaya                                 | E 416 |\\n| Sorbate de potassium                        | E 202 | Gomme Tara                                   | E 417 |\\n| Acide acétique                              | E 260 | Gomme Gellane                                | E 418 |\\n| Acétates de potassium                       | E 261 | Sorbitols                                    | E 420 |\\n| Acétates de sodium                          | E 262 | Glycérol                                     | E 422 |\\n| Acétate de calcium                          | E 263 | Gomme cassia                                 | E 427 |\\n| Acide lactique                              | E 270 | Pectines                                     | E 440 |\\n| Propionate de calcium                       | E 282 | Méthylcellulose                              | E 461 |\\n| Dioxyde de carbone                          | E 290 | Sels de sodium, de potassium et de calcium d'acides gras | E 470a |\\n| Acide malique                               | E 296 | Sels de magnésium d'acides gras              | E 470b |\\n| Acide ascorbique                            | E 300 | Polyglycérols de polyglycérol                | E 476 |\\n| Ascorbate de sodium                         | E 301 | Phytostérols riches en stigmasterol          | E 499 |\\n| Ascorbate de calcium                        | E 302 | Carbonates de sodium                         | E 500 |\\n| Esters d'acides gras de l'acide ascorbique  | E 304 | Carbonates de potassium                      | E 501 |\\n| Extrait riche en tocophérols                | E 306 | Carbonates d'ammonium                        | E 503 |\\n| Alpha-tocophérol                            | E 307 | Carbonates de magnésium                      | E 504 |\\n| Érythorbate de sodium                       | E 316 | Acide chlorhydrique                          | E 507 |\\n| Lécithines                                  | E 322 | Chlorure de potassium                        | E 508 |\\n| Lactate de sodium                           | E 325 | Chlorure de calcium                          | E 509 |\\n| Lactate de potassium                        | E 326 | Chlorure de magnésium                        | E 511 |\\n| Lactate de calcium                          | E 327 | Acide sulfurique                             | E 513 |\\n| Acide citrique                              | E 330 | Sulfates de sodium                           | E 514 |\\n| Citrates de sodium                          | E 331 | Sulfates de potassium                        | E 515 |\\n| Citrates de potassium                       | E 332 | Sulfate de calcium                           | E 516 |\\n| Citrates de calcium                         | E 333 | Sulfate d'ammonium                           | E 517 |\\n| Acide tartrique [L (+)]                     | E 334 | Hydroxyde de sodium                          | E 524 |\\n\\n---\\n\\n# CHARTE PRODUITS COUP DE PATES\\n\\n| Hydroxyde de potassium       | E 525  | Shellac                          | E 904  |\\n|------------------------------|--------|----------------------------------|--------|\\n| Hydroxyde de calcium         | E 526  | L-cystéine                       | E 920  |\\n| Hydroxyde de magnésium       | E 528  | Carbamide                        | E 927b |\\n| Tartrate de fer              | E 534  | Argon                            | E 938  |\\n| Ferrocyanure de sodium       | E 535  | Hélium                           | E 939  |\\n| Ferrocyanure de potassium    | E 536  | Azote                            | E 941  |\\n| Acides gras                  | E 570  | Protoxyde d’azote                | E 942  |\\n| Acide gluconique             | E 574  | Oxygène                          | E 948  |\\n| Glucono-delta-lactone        | E 575  | Hydrogène                        | E 949  |\\n| Gluconate de sodium          | E 576  | Néo-hespéridine DC               | E 959  |\\n| Gluconate de potassium       | E 577  | Glycosides de stéviol            | E 960  |\\n| Gluconate de calcium         | E 578  | Lactitol                         | E 966  |\\n| Gluconate ferreux            | E 579  | Invertase                        | E 1103 |\\n| Lactate ferreux              | E 585  | Polydextrose                     | E 1200 |\\n| L-leucine                    | E 641  | Pullulan                         | E 1204 |\\n| Cire d’abeille blanche et jaune | E 901 | Citrate de triéthyle             | E 1505 |\\n| Cire de candelilla           | E 902  | Triacétate de glycéryle (triacétine) | E 1518 |\\n| Cire de carnauba             | E 903  | Propanediol-1,2 (propylène glycol) | E 1520 |\\n\\n## ANNEXE IV : Ingrédients controversés : ingrédients faisant l’objet de rapports scientifiques controversés et/ou perçus négativement par le consommateur.\\n\\n| Ingrédient                | Motif                                                                 |\\n|---------------------------|-----------------------------------------------------------------------|\\n| Sirop de glucose-fructose | Niveau de transformation élevé + manque de transparence sur le niveau de sucre présent dans le produit |\\n| Maltodextrine             | Ingrédient sans intérêt nutritionnel et organoleptique                |\\n| Huile de coco/coprah      | Contient 80% d’acides gras saturés dont l’excès augmente le risque de maladies cardiovasculaires |\\n| Sirop de maïs             | Niveau de transformation élevé + manque de transparence sur le niveau de sucre présent dans le produit |\\n\", start_char_idx=None, end_char_idx=None, text_template='{metadata_str}\\n\\n{content}', metadata_template='{key}: {value}', metadata_seperator='\\n')]\n"
     ]
    }
   ],
   "source": [
    "## Read PDF files\n",
    "from typing import List\n",
    "from llama_index.core.schema import Document\n",
    "import nest_asyncio\n",
    "\n",
    "nest_asyncio.apply()\n",
    "#GET LLAMA_CLOUD_API_KEY\n",
    "import os\n",
    "from llama_parse import LlamaParse\n",
    "from llama_parse.utils import ResultType, Language\n",
    "\n",
    "api_key: str | None = os.getenv(\"LLAMA_CLOUD_API_KEY\")\n",
    "print(api_key)\n",
    "\n",
    "parsing_instructions = \"Do not take into account the page breaks (no --- between pages), do not repeat the header and the footer so the tables are merged. Keep the same format for similar tables.\"\n",
    "\n",
    "parser = LlamaParse(\n",
    "    api_key=str(api_key), \n",
    "    result_type=ResultType.MD,\n",
    "    gpt4o_mode=True,\n",
    "    verbose=True,\n",
    "    language=Language.FRENCH,\n",
    "    parsing_instruction=parsing_instructions,  # Optionally you can define a parsing instruction\n",
    ")\n",
    "# sync\n",
    "documents: List[Document] = parser.load_data(\"../input/CDP_CHARTE_PRODUITS.pdf\")\n",
    "print(documents)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "# with open(\"../output/CDP_CHARTE_PRODUITS__llamaParse.md\", \"w\") as f:\n",
    "#    f.write(documents[0].get_content())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "106\n",
      "Found 76 unique paragraphs on 106 paragraphs.\n",
      "Found 30 duplicate paragraphs.\n"
     ]
    }
   ],
   "source": [
    "import sys\n",
    "sys.path.append('..')\n",
    "from src.markdown_processor import MarkdownProcessor\n",
    "\n",
    "md_result: str = documents[0].get_content()\n",
    "\n",
    "output_path = \"../output/CDP_CHARTE_PRODUITS__llamaParse_cleaned.md\"\n",
    "processor = MarkdownProcessor(md_result, strict=True, remove_pagination=True)\n",
    "md_cleaned = processor.process()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "processor.save_cleaned_result(md_cleaned, output_path)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Started parsing the file under job_id b82bb4ce-18ac-4c84-a2c8-f48ab418aae0\n",
      "106\n",
      "Found 76 unique paragraphs on 106 paragraphs.\n",
      "Found 30 duplicate paragraphs.\n"
     ]
    }
   ],
   "source": [
    "from pathlib import Path\n",
    "import sys\n",
    "sys.path.append('..')\n",
    "from src.markdown_processor import MarkdownProcessor\n",
    "from src.converter import PDFConverter\n",
    "import os \n",
    "\n",
    "api_key: str | None = os.getenv(\"LLAMA_CLOUD_API_KEY\")\n",
    "\n",
    "converter = PDFConverter(api_key=str(api_key))\n",
    "md_content = converter.convert(\"../input/CDP_CHARTE_PRODUITS.pdf\")\n",
    "converter.save_md(md_content, Path(\"../output/CDP_CHARTE_PRODUITS.md\"))\n",
    "\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "QuivrParse-DS8JDGq8",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
